package com.yonyou.pmclouds.workstartreport.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yonyou.pmclouds.basecom.entity.SuperVO;
import com.yonyou.pmclouds.workquality.entity.WorkqualityVO;
import lombok.Data;

import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.math.BigDecimal;
import java.util.Date;

@Table(name="pm_workstart")
@Data
public class WorkStartVO extends SuperVO {
    public static final String BILLSTATUS = "billstatus";
    public static final String PKPROJECT = "pkProject";
    public static final String PKENTERPRISE="pkEnterprise";
    public static final String PKSUPERVISION="pkSupervision";
    public static final String STARTDATE="startdate";
    public static final String PKWORKQUALITY="pkWorkquality";

    public static final String CREATOR = "creator";
    public static final String CREATOR_NAME = "creatorName";
    public static final String ENTERPRICE_NAME = "enterpriseName";
    public static final String PK_ENTERPRISE = "pkEnterprise";
    public static final String SUPERVISION_NAME="supervisionName";
    public static final String PK_SUPERVISION="pkSupervision";
    @Id
    private String pkWorkstartreport;//报告主键

    private BigDecimal longitude; //经度
    private BigDecimal latitude;  //纬度
    private String position;   //位置信息

    private String pkEnterprise;  //施工单位
    private String pkSupervision;  //监理单位
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    private Date startdate;     //开工日期

    private Byte billstatus;//报告单据状态
    private String billType;//单据类型


    private String creator;//创建者
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    private Date creationtime;//创建时间

    private String modifier;//修改者
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    private Date modifytime;//修改时间


    private String pkTenant;//关联租户主键

    private String pkWorkquality;//关联标准条件
    private String pkProject;//关联项目

    @Transient
    private String projectCode;//项目编号
    @Transient
    private String projectName;//项目名称
    @Transient
    private String conditionName;//条件名称
    @Transient
    private WorkqualityVO[] workqualityVOS;//条件子集
    @Transient
    private String[] pictures;//图片信息
    @Transient
    private WorkStartCheckVO[] workStartCheckVOS;//检查项子集
    @Transient
    private  String enterpriseName;//施工单位名称
    @Transient
    private String supervisionName;//监理单位名称
    @Transient
    private String status;//单据展示状态
    @Transient
    private Integer workqualityCount;//开工条件总数
    @Transient
    private Integer checkCount;//不具备检查项数量
    @Transient
    private String orgName;//组织名 打印模板时用的
    @Transient
    private String creatorName;//制单人姓名
    @Transient
    private String strBillstatus; // 单据状态
    @Transient
    private String pkOrganization; // 友工程组织主键
    @Transient
    private String pkOrgName; // 组织名称
    @Transient
    private String pkOrgSrc; // 来源PK
    @Transient
    private boolean canApprove; // 是否是审批人


}
